WordPressでソースコードにSQLを直書きで新着記事を10件表示する
2018年12月10日
WordPressで、ソースコードにSQLを直書きで新着記事を10件表示するというのをやってみました。
やりたいこと
PHPのファイルにSQLを直書きで、新着記事から10件の記事を表示したい
何故SQL直書きが必要なのか
WordPressには、新着記事を指定件数表示する記述が準備されているので、通常であればSQL直書きで記事を取り出す必要はありません。
しかし、今回やりたいことは、WordPressのサブディレクトリにインストールした別のWordPress(ブログ用)から、新着記事を表示したいということです。
もともと、Simplepieというライブラリを使ってやっていたのですが、サイトをhttps化すると取得ができなくなってしまいました。(理由は分かりません)
そのため、仕方なしで、本体のサイトでブログのデータベースに接続し、そこから最新記事を取り出すことにしました。
SQL文は以下のようなかんじです。
#新着記事を10件取り出す $s_sql = " select post_title, post_date ,guid from wp_posts where post_status = 'publish' order by post_date desc limit 10";
一応解説すると
wp_posts ・・・ WordPressの記事が格納されているテーブル
post_title ・・・ 記事タイトル
guid ・・・ 記事のURL
post_status = publish ・・・ 記事が公開されている
order by post_date desc limit 10 ・・・・ 最新記事から10件
あとは、普通に while文でループして記事を出力したらOKでした。